// -*- coding: utf-8 -*- 
/**
 * Project: AlgorithmsLearn
 * Creator: yanking
 * Create time: 2022-02-27 14:34
 * IDE: IntelliJ IDEA
 * Introduction:
 */
package com.LeetCodeT.Greedy;

public class CanJump {
    // 判断能否跳跃到最后一个下标
    // 寻找最后一个可以到达的节点，然后往前推导
    public boolean canJump(int[] nums) {
        int position = nums.length - 1;
        while (position > 0) {
            boolean flag = false;
            for (int i = 0; i < position; i++) {
                if ((nums[i] + i) >= position) {
                    // 找到可以直接到达最后一个位置的节点
                    position = i; // 最后的节点往前推导
                    flag = true;
                }
            }
            if (!flag) {
                // 没有找到节点可以到达当前的目标节点
                return false;
            }
        }
        return true;
    }
}


